1. Field
The system and method disclosed herein relate generally to animation production and more specifically to methods and systems for automatically generating animation for use in connection with Internet web pages and/or for embedding into applications such as Windows applications that use Microsoft Object Linking and Embedding (xe2x80x9cOLExe2x80x9d) or other applications. Examples include animated talking characters in Microsoft Powerpoint presentations, Word word processing, and Microsoft Outlook E-mail. Other examples include playing the characters on a stand-alone window floating on the desktop outside of any other application such as an Internet browser or a productivity application.
2. General Background
Animated characters, particularly talking animated characters, can be effective communication tools in many fields but generally are expensive to produce and change. They can be used in many settings, from making Internet pages more interesting to customized presentations to groups or individual and even in interactive presentations, whether through the Internet or other E-mail or directly in an application such as Powerpoint or a word processor.
One example of using aminated talking characters in Internet communications that are enjoying more popularity than ever. With the number of users rising almost exponentially over the last few, years, it is not surprising that a large majority of businesses have made the Internet a significant part of their overall marketing plan. In addition to the large number of xe2x80x9cweb surfersxe2x80x9d who may come across advertising content, the Internet offers many advantages in terms of technological capabilities for advertising products and services. Current Internet technology permits advertisers to do many things which have heretofore been unavailable through any other known advertising medium.
One key benefit of Internet based advertising is the availability of real time interaction with the audience (i.e. the Internet user). For example, it is possible for web developers, working at the behest of advertisers, to script multiple dialogs, scenes, and/or interactions in connection with a web site such that a visitor to that site may be made to feel that the xe2x80x9cadvertisementxe2x80x9d was produced specifically for his or her interests. In other words, based upon the particular HTML links and selections that a user follows or makes, respectively, a user will be presented with information of specific interest to that user. This is in contrast to, for example, a television commercial, where an advertiser produces a commercial of general interest to the universe of its potential customers.
Another major advantage available to Internet advertisers is the variety and richness of media available. Web sites may include information taking the form of plain text, still photographs, still animation, movies, spoken words, scrolling text, dynamic animation and music among others. A combination of these forms of information can create a powerful, enjoyable and lasting image in the mind of the potential customer.
One aspect of web site content that is becoming increasingly popular is dynamic animation. With this media format, an animated character may appear on the user""s display, move around the display in a lifelike fashion, point to various objects or text on the screen and speak to the user. In most cases, when the character speaks to the user, the dialog is synchronized with lip movements representing the phonemes being spoken so that it appears that the words are actually emanating from the character""s mouth. As can be imagined, dynamic animation can provide an interesting, informative and fun environment through which products and services may be advertised. By way of example, a company may include its mascot (e.g. an animal, persona, fictional character) in its web page content. In this way, the mascot can walk around the web page, speak to the user and use hand and other body movements to convey messages to the user.
Additionally, the mascot may point to specific items on the page, make movements and/or recite dialog based specifically and in real time upon user input. For example, in the case of a web site for the sale of automobiles, a user might click on the graphic of the particular model that interests him or her resulting in the display of a web page completely dedicated to that model. That page may also include the dynamic animation (often including dialog) representing the company""s mascot welcoming the user to the page concerning the particular model. Additionally, the advantages of the real time interaction may be effected such that the character, for example, describes and points to various features of the car based upon user input (e.g. the user points to a portion of the automobile graphic which is of interest).
While dynamic animation presents significant opportunities for advertising (as well as other applications) on the Internet and in other applications, various implementation difficulties arise in connection with developing and revising content. First, the production of dynamic animation requires special skill not broadly available. Dynamic animation (also generally referred to as xe2x80x9cchoreographyxe2x80x9d herein) must generally be conceived and created by an individual having both artistic capabilities and a technical knowledge of the animation environment. The cost involved in having material choreographed is thus quite expensive both in terms of time and financial commitment.
A second difficulty arising in the creation of dynamic animation is the inherent difficulty in reusing such animation in significantly or even slightly different applications. For example, it is exceedingly difficult to reuse animation produced in accordance with a specific dialog with another dialog. In other words, it is a complex task to xe2x80x9cre-purposexe2x80x9d choreography even after it is initially produced at great expense. Additionally, no tools that significantly automate this task are known to the inventors herein. Thus, borrowing from the above example, if an automobile salesman animation was produced with specific dialog to recite and point to features on the automobile as selected by the user, it would not be a simple or inexpensive task to use the same salesman character along with the same general class of body movements to add a discussion of a newly added automobile feature. On the contrary, it would heretofore be necessary to produce a new animation for synchronization with the new dialog.
Another problem arising in connection with the use of dynamic animation on the Internet and some other applications results from network bandwidth limitations. With current technology and network traffic, it is difficult to deliver compelling and highly expressive animation over the Internet or through certain other communication channels without downloading substantial information prior to execution of the animation. Similar considerations apply even when the animation is locally generated and stored or played out. This can result in user frustration, substantial use of storage space and other undesirable effects resulting from the download process or the storage, retrieval and play out process. Alternatively, the animation may be reduced to an acceptable size for real time narrowband delivery and lower storage and retrieval requirements. This solution, however, compromises the quality of the animation as well as, in most cases, the quality of associated audio.
Finally, the possibility of changing animation and/or dialog for a character on a daily or even hourly basis typically is impractical due to the inherent difficulties and time required to synchronize lip movements and behaviors to dialog. Each of the issues discussed above individually and collectively serve to create a substantial barrier to entry for the acceptance and implementation of animated characters in an Internet environment.
Accordingly, it is believed that there is a need for a system and method whereby dynamic animation can be prepared at a reduced cost and without the need for significant specialized skills.
There is also a need for a system and method that can be used to develop flexible dynamic animation that can be easily re-purposed for use in different applications and with different dialogue.
There is additionally a need for a system and method that generate dynamic animation that can be used in a narrowband environment such as the Internet without the need to delete content or compromise quality in order for such animation to be processed on a real-time basis.
The system and method described herein provide these and other advantages in the form of an easy to use tool for preparing animated characters for use on the Internet and in other applications that need not involve the Internet. Requiring only limited user input and selection, the system and method described herein essentially automatically choreograph and synchronizes reusable animation components with dialog streams. Once generated, the resulting choreography can be embedded into a hypertext markup language (HTML) web page with an appropriate animation player and audio player plug-in to deliver any number of animated dialogues with minimal wait time and minimal developer effort. In addition, the choreography (moving and talking characters) can be embedded into other applications, such as, without limitation, into Windows applications that use Microsoft Object Linking and Embedding (xe2x80x9cOLExe2x80x9d), e.g., animated talking characters can be included in Microsoft Powerpoint presentations, Microsoft Work word processing, and MS Outlook E-mail. The talking characters can be played in a stand-alone window floating on top of the desktop outside of any other application such as an Internet browser or a productivity application.
In an illustrative and non-limiting embodiment, the automatic animation preparation system (AAPS) described herein includes an animation preparation application that assigns dialog to pre-existing character templates and automatically generates lip movements and movements and behaviors synchronized with streamed audio dialog. The AAPS interacts with a browser control (plug-in) located on the client, The browser control includes an animation engine supporting AAPS generated animation and also supports runtime execution of audio streaming. In other uses, the AAPS can be embedded in other applications, such as Windows applications that use OLE, and can be played back in a standalone window floating on the desktop outside of any other application.
A non-limiting object of the system and method described herein is to provide a system and method for generating character animation that can be used in an Internet environment, or in other environments, and address the shortcomings discussed above.
Another non-limiting object is to provide a tool for automatically generating easily modifiable dynamic animations synchronized with audio content that can be implemented by embedding such animations in an Internet web page or in application or other software.
In accordance with these and other objects which will be apparent hereinafter, the system and method hereof will be described with particular reference to the accompanying drawings.